// pages/noworder/noworder.js
var App = getApp()
import Dialog from '../../miniprogram_npm/@vant/weapp/dialog/dialog';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    time: '', //订票时间
    usable: '', // 门票使用有效期
    username: '',
    telephone: '',
    IDcard: '',
    show: false,
    price: 0,
    num: 1, // 购票的数量，最少一张，最多4张
    week: null,
    code: null
  },
  // 立即预购事件
  getTickets: function (e) {
    if (this.data.username == '') {
      wx.showToast({
        title: '取票人姓名为空，请填写',
        icon: 'none'
      })
    } else if (this.data.telephone == '') {
      wx.showToast({
        title: '手机号为空，请填写',
        icon: 'none'
      })
    } else if (this.data.IDcard == '') {
      wx.showToast({
        title: '身份证为空，请填写',
        icon: 'none'
      })
    } else {
      console.log('shanima')
      let pay = null
      Dialog.confirm({
          title: '是否确认购买',
        })
        .then(() => {
          // on confirm
          // 确认购买就存到数据库把 pay 值写成true
          pay = true
          // 把数据存到数据库
          this.getAddCloud(pay)
        })
        .catch(() => {
          // on cancel
          // 取消购买也存到数据库把 pay 值写成false
          pay = false
          // 把数据存到数据库
          this.getAddCloud(pay)
        });
    }
  },
  // 打开预订须知
  openNotice: function (e) {
    // console.log(e)
    this.setData({
      show: true
    })
  },
  // 关闭预订须知
  onClose: function (e) {
    this.setData({
      show: false
    })
  },
  // 获取今天的日期
  getToDay: function (e) {
    let myDate = new Date()
    let YY = myDate.getFullYear()
    let MM = myDate.getMonth() + 1
    MM = MM < 10 ? '0' + MM : MM
    let DD = myDate.getDate()
    DD = DD < 10 ? '0' + DD : DD
    // 获取当天是星期几
    let arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
    let dd = myDate.getDay()
    // 存到data
    this.setData({
      usable: `${YY}-${MM}-${DD} 当日使用有效`,
      week: arr[dd]
    })
  },
  // 随机生成票号
  createRandom: function (params) {
    let code = null
    let myDate = new Date
    let MM = myDate.getMonth() + 1
    let DD = myDate.getDate()
    let hh = myDate.getHours()
    let mm = myDate.getMinutes()
    let ss = myDate.getSeconds()
    DD = DD < 10 ? '0' + DD : DD
    MM = MM < 10 ? '0' + MM : MM
    ss = ss < 10 ? '0' + ss : ss

    let r1 = Math.floor(Math.random() * 10)
    let r2 = Math.floor(Math.random() * 10)
    let r3 = Math.floor(Math.random() * 10)
    let r4 = Math.floor(Math.random() * 10)

    code = MM + DD + hh + mm + ss + r1 + r2 + r3 + r4
    this.setData({
      code: code
    })
  },
  // 调用add云函数存用户购票信息
  getAddCloud(pay) {
    this.createRandom()
    wx.cloud.callFunction({
      name: 'add',
      data: {
        username: this.data.username,
        telephone: this.data.telephone,
        IDcard: this.data.IDcard,
        price: this.data.price,
        num: this.data.num,
        time: this.data.time,
        openid: App.globalData.openid,
        week: this.data.week,
        code: this.data.code,
        pay: pay
      },
      success: res => {
        console.log(res)
        wx.switchTab({
          url: '../order/order'
        })
      },
      fail: err => {
        console.log(err)
      }
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options)
    this.setData({
      time: options.time
    })
    this.getToDay()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})